package com.hupu.jrs.ui.thread.list

import com.hupu.jrs.ui.BasePresenter
import com.hupu.jrs.ui.BaseView

/**
 * Created by sll on 2016/5/11.
 */
interface ThreadListContract {
    interface View : BaseView {
        fun showLoading()

        fun showProgress()

        fun showContent()

        fun renderThreadInfo(forum: Forum)

        fun renderThreads(threads: MutableList<Thread>)

        fun onLoadCompleted(hasMore: Boolean)

        fun onRefreshCompleted()

        fun attendStatus(isAttention: Boolean)

        fun onError(error: String)

        fun onEmpty()

        fun onScrollToTop()

        fun onFloatingVisibility(visibility: Int)

        fun showPostThreadUi(fid: String)

        fun showLoginUi()

        fun showToast(msg: String)
    }

    interface Presenter : BasePresenter<View> {

        fun onThreadReceive(type: String)

        fun onStartSearch(key: String, page: Int)

        fun onAttentionClick()

        fun onPostClick()

        fun onRefresh()

        fun onReload()

        fun onLoadMore()
    }
}
